package mlz.a_inner;

//测试类
public class DemoTest02 {
    public static void main(String[] args) {

        /* 匿名内部类
            接口/抽象类 对象名 = new 接口/抽象类(参数值){
                重写父类方法 / 实现接口方法
            }

            接口 / 抽象类是不能new对象
            new Animal(): 是要继承或者实现的抽象类/ 接口
            {..}: 真实在执行的实现类/子类
         */
//        Animal an = new Animal(){
//            @Override
//            public void cry() {
//                System.out.println("重写后的方法....");
//            }
//        };
//        an.cry();



        new Animal(){
            @Override
            public void cry() {
                System.out.println("重写后的内容");
            }
        }.cry();

        //正常对象使用情况
        Outer outer = new Outer();
        outer.method();
        outer.getClass();

        //匿名对象
        new Outer().method();
        new Outer().getClass();



    }
}
